#include <stdio.h>
#include <string.h>

int main() {
    int n,m,k,a,b;
    scanf("%d %d %d",&n,&m,&k);
    int arr[n];
    int left=0,right=k-1,max=0;
    memset(arr,0,sizeof(arr));
    while(m--) {
        scanf("%d %d",&a,&b);
        for(int i=a;i<b;i++) {
            arr[i]=1;
            if(i<k) max++;
        }
    }
    int temp=max;
    for(int i=0;i<n-k-1;i++) {
        if(arr[++right])temp++;
        if(arr[left++]) temp--;
        max=max>temp ? max : temp;
    }
    printf("%d\n",max);
    return 0;
}